小编典典

Swift 中的 `let` 和 `var` 有什么区别?

all

Apple 的 Swift 语言let和in有什么区别?var

据我了解,它是一种编译语言,但它不会在编译时检查类型。这让我很困惑。编译器如何知道类型错误?如果编译器不检查类型,是不是生产环境有问题?

当我尝试为 a 赋值时会出现此错误let

无法分配给属性:’variableName’ 是一个 ‘let’ 常量 将 ‘let’
更改为 ‘var’ 以使其可变


阅读 202

收藏
2022-04-01

共1个答案

小编典典

let关键字定义了一个常量:

let theAnswer = 42

theAnswer之后无法更改。这就是为什么任何东西weak都不能用let. 它们需要在运行时 更改 ,您必须var改为使用它们。

定义了var一个普通变量。

有趣的是:

常量的值 不需要在编译时就知道 ,但你必须只赋值一次。

另一个奇怪的功能:

您可以使用几乎任何您喜欢的字符作为常量和变量名称,包括 Unicode 字符:

let 馃惗馃惍 = "dogcow"

摘自:Apple Inc.“Swift
编程语言”。iBooks。https://itunes.apple.com/WebObjects/MZStore.woa/wa/viewBook?id=881256329


2022-04-01